var url_sistema = "./GestionFacadeWebUsuarios";
var persona_empresa_cargo = [];
var persona_empresa_profesion = [];
var persona_empresa_nombres = [];
var documento_codigo = [];
var documento_nombre = [];
var mail_usuario = [];
var mail_usuario_codigo = [];
var empresa_codigo = [];
var empresa_nombre = [];
var persona_empresa = [];
head.ready(function() {
    $.ajaxSetup({
        cache: false
    });
    $(".proyCheck").live('click', selItem );
    $(".proyCheck_mail").live('click', selItem_mail);
    $(".proyFechaTiempoRespuesta").live('click', selItem_FechaLimite);
    $(".proyCheck_emp").live('click', selItem_Empresa);
    selItem_Proyectado();
    reset_Tamanio_ArchivoExterno();
    permisos_Y_ObtenerTipoTrabajadorEpsGrau();
    $("#dv_proyecta").hide();
    $("#chkProyect").attr('checked', false);
    $("#cmb_remit").change(cambiarRemitente);
    $("#dv_instituciones").hide();
    $("#dv_person_nat").hide();
    include("js/formularios/documentos_genericos/cargarComponentesHtml.js");
    include("js/formularios/documentos_genericos/cargarDatosDesdeUrl.js");
});

//**********************************************************************************************
function cambiarRemitente(){
    $("#cmb_remit").find("option[value='0']").remove();
    var val_cmb = $("#cmb_remit").val();
    if(val_cmb=="1"){
        $("#dv_instituciones").show();
        $("#dv_person_nat").hide();
        $("#txt_name_persona").val("");
    }else{
        $("#dv_instituciones").hide();
        $("#dv_person_nat").show();
        empresa_codigo.splice(0,1);
        empresa_nombre.splice(0,1);
        $("#name_empresa").html("");
    }
}
function selItem_Empresa(){
    var check_codigo = this.getAttribute("empcheck_codigo");
    var check_nombre = this.getAttribute("empcheck_razon");
    if ($(this).is(':checked')){
        if(empresa_codigo.length>=1){
            jAlert(mensajes_sistema[165]+", \nUd YA SELECCIONO A: <b>"+empresa_nombre[0]+"</b>");
            $(this).attr('checked', false);
            return;
        }
        empresa_codigo.push(check_codigo);
        empresa_nombre.push(check_nombre);
    }else{
        var posi = jQuery.inArray(check_codigo, empresa_codigo);
        empresa_codigo.splice(posi,1);
        empresa_nombre.splice(posi,1);
    }
    llenarSelector(persona_empresa);
}
function startStatusCheck(){
    $('submitButton').disabled = true;
    updater = new Ajax.PeriodicalUpdater(
        'status',
        'Upload',
        {
            asynchronous:true,
            frequency:1,
            method: 'get',
            parameters: 'c=status',
            onFailure: reportError
        });
    return true;
}
function selItem_FechaLimite(){
    if(!$("#chkFecha").is(':checked')){
        $("#dv_tiempo_respuesta").hide();
        return;
    }
    $("#txt_fecha_rpt").val("");
    $("#dv_tiempo_respuesta").show();
}
function cargarComponentesHtml(){
    $("#dv_tiempo_respuesta").hide();
    $("#dv_instituciones").hide();
    $("#dv_person_nat").hide();
}
function reportError(request){
    $('submitButton').disabled = false;
    $('status').innerHTML = '<div class="error"><b>Error communicating with server. Please try again.</b></div>';
}
function killUpdate(message){
    $('submitButton').disabled = false;
    updater.stop();
    if(message != ''){
        $('status').innerHTML = '<div class="error"><b>Error processing results: ' + message + '</b></div>';
    }else{
        new Ajax.Updater('status',
            'Upload',
            {
                asynchronous:true,
                method: 'get',
                parameters: 'c=status',
                onFailure: reportError
            });
    }
}
//**********************************************************************************************

function cargarFlexTrabaj(){
    $("#flexTrabajad").flexigrid({
        url: Url_Sistema[1]+"?opt=1",
        dataType: 'json',
        colModel : [
        {
            display: '<b>Profesión</b>',
            name : 'profesion',
            width : 70,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Nombre</b>',
            name : 'nombres',
            width : 200,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Cargo</b>',
            name : 'cargo',
            width : 160,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Área</b>',
            name : 'area',
            width : 190,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Seleccionar</b>',
            name : 'opciones',
            width : 70,
            sortable : false,
            align: 'center'
        }
        ],
        field_find: "NOMBRES O APELLIDOS:<br>o<br>NOMBRE DE ÁREA(jefatura) ",
        find_jefatura:true,
        sortname: "codigo",
        sortorder: "asc",
        usepager: true,
        title: 'TRABAJADORES DE EPS GRAU S.A.',
        useRp: true,
        rp: 10,
        showTableToggleBtn: false,
        width: 755,
        height: 310
    });
}
function cargarFlexEmpresas(){
    $("#flexEmpresas").flexigrid({
        url: Url_Sistema[0]+"?opt=12",
        dataType: 'json',
        colModel : [
        {
            display: '<b>Razón Social</b>',
            name : 'razon_social',
            width : 300,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Dirección</b>',
            name : 'direccion',
            width : 300,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Seleccionar</b>',
            name : 'opciones',
            width : 66,
            sortable : false,
            align: 'left'
        }
        ],
        field_find: "EMPRESA: ",
        sortname: "codigo",
        sortorder: "asc",
        usepager: true,
        title: 'BÚSQUEDA DE EMPRESAS',
        useRp: true,
        rp: 10,
        showTableToggleBtn: false,
        width: 704,
        height: 310
    });
}
function getData(array){
    var rr = "";
    for(i=0; i<array.length; i++){
        rr+=array[i]+";";
    }
    return rr;
}
function getDataRef(array){
    var rr = "";
    for(i=0; i<array.length; i++){
        rr+=persona_empresa[i]+"|"+persona_empresa_profesion[i]+"|"+persona_empresa_nombres[i]+"|"+persona_empresa_cargo[i]+"|;";
    }
    return rr;
}
function getDechaScript(fecha){
    var retrn = "";
    var aux = "";
    for(var i=0; i<fecha.length; i++){
        if(fecha[i]=='/'){
            retrn = "-"+aux+retrn;
            aux="";
        }else{
            aux+=fecha[i];
        }
    }
    retrn = aux+retrn;
    return retrn;
}
function guardarDocumentoExterno(){
    var opt_remit = val_cmb = $("#cmb_remit").val();
    if(validarDocument_EX(opt_remit)){
        jConfirm('Desea guardar El Documento Externo?', 'Mensaje del Sistema', function(r) {
            var tip = "999";
            var as = $("#txt_asunto").val();
            var cab = $("#txt_cabecera").val();
            var cnt = "";
            var ref = "";
            var dsn = getDataRef(persona_empresa);
            var fec = $("#txt_fecha_rpt").val();
            var cop = mail_usuario.toString();
            if (r) {
                cargarLoad();
                $.getJSON(Url_Sistema[2], {
                    opt: 1 ,
                    oihgfdsadada:tip,
                    dsadafsdfafadsadsa:cop,
                    dasdadas:as,
                    vfdsgdfg:cnt,
                    ewqeqe:dsn,
                    xzcsdfsdf:ref,
                    wqewqdfsfsd: fec,
                    vfdsgdfgdasddgsfds:cab,
                    fadfdsfsdfadsa:'',
                    vfdsgdfgdasddgsfdsdfsfadsadd1232:opt_remit=="1"?empresa_codigo[0]:"",
                    fadfdsfsdfadsae1e21312321:'',
                    csadfsfdsfs:opt_remit=="2"?$("#txt_name_persona").val():""
                }, function(data){
                    if(data.success){
                            
                        var mensajeDesdeServidor = data.datos;
                        var arr_for_encrip = mensajeDesdeServidor.split("#");
                        var messageProceso = arr_for_encrip[0];
                        jAlert(messageProceso);
                            
                        visualizarFlash(arr_for_encrip[1]);
                        limpiarFormularioRegistro();
                        pausarLoad('');

                        //-----------------------------
                        $.getJSON("6c19f7c2de67a9b80f3e0107b35313a5", {
                            jhfdfgsdfsfs:'E',
                            fadfdsfsdfadsa:arr_for_encrip[2]
                        },function(data){
                            });
                        //-----------------------------
                        $.getJSON(Url_Sistema[2], {
                            opt:5,
                            dsagsiuoqwppeiuasgfdsfa:getDataMil(),
                            fadfdsfsdfadsa:mensajeDesdeServidor,
                            dgdfgdghggf:as //Asunto
                        },function(data){
                            });
                    }else{
                        var rpta = data.datos.split("-");
                        pausarLoad('');
                        mostrarError(rpta[2]);
                    }
                });
            }
        });
    }    
}
function visualizarFlash(val){
    var url = "6c19f7c2de67a9b80f3e0107b35313a5?fadfdsfsdfadsa="+val;
    $("#linkVisualizar").html("<a class='button' target='_blank' href="+url+"> <span>Visualizar</span></a>"+
        "<a class='button' href='docuext_man.htm'> <span>Nuevo Documento</span></a>");
}
function mostraDialogo_Usuario(){
    $("#dlgPrueba").dialog({
        width: 790,
        high: 600,
        modal: true,
        resizable: false,
        position: 'top',
        buttons: {
            OK: guardarDialog
        }
    });
    llenarSelector(persona_empresa);
    // $("#txt_q").val("dsadasdadas");
    cargarFlexTrabaj();
//  $("#txt_q").val("")
}
function mostraDialogo_Empresa(){
    $("#dlgEmpresa").dialog({
        width: 750,
        high: 600,
        modal: true,
        resizable: false,
        position: 'top',
        buttons: {
            OK: guardarEmpresa,
            AGREGAR_MAS: nuevo_empresa
        }
    });
    llenarSelector(empresa_codigo);
    cargarFlexEmpresas();
    $("#flexEmpresas").flexOptions({
        newp:1
    }).flexReload();
}
function selItem(){
    var codigo_usuario_seleccionado = this.getAttribute("checkcodigo");
    var can_check = puedeSeleccionarUsuario(codigo_usuario_seleccionado);

    if (can_check) {
        var tipo_usuario = this.getAttribute("checktipo_usuario_area");
        var check_codigo = this.getAttribute("checkcodigo");
        var check_cargo = this.getAttribute("checkcargo");
        var check_nombre = this.getAttribute("checknombre");
        var check_profesion = this.getAttribute("checkprofesion");
        var check_mail = this.getAttribute("checkmail");
        if ($(this).is(':checked')){
            if(persona_empresa>=1){
                jAlert(mensajes_sistema[12]);
                $(this).attr('checked',false);
                return;
            }

            persona_empresa.push(check_codigo);
            persona_empresa_cargo.push(check_cargo);
            persona_empresa_nombres.push(check_nombre);
            persona_empresa_profesion.push(check_profesion);
            selItem_mailConCodigo(check_codigo,check_mail,"I");
            
        }else{
            var posi = jQuery.inArray(check_codigo, persona_empresa);
            persona_empresa.splice(posi,1);
            persona_empresa_cargo.splice(posi,1);
            persona_empresa_nombres.splice(posi,1);
            persona_empresa_profesion.splice(posi,1);
            selItem_mailConCodigo(check_codigo,check_mail,"S");
        }
    } else {
        $(this).attr('checked', false);
    }
    llenarSelector(persona_empresa);
}
function vaciarcombo(){
    while(persona_empresa.length>0){
        persona_empresa.splice(0,1);
        persona_empresa_cargo.splice(0,1);
        persona_empresa_nombres.splice(0,1);
    }
}
function guardarEmpresa(){
    $("#name_empresa").html(empresa_nombre[0]);
    salirDialogMin();
}
function guardarDialog(){
    var html = "<table>";
    for(i=0; i<persona_empresa.length; i++){
        html+="<tr>";
        html = html+"<td>"+persona_empresa_profesion[i]+" "+persona_empresa_nombres[i]+"</td><td>-</td><td>"+persona_empresa_cargo[i]+"</td>";
        html+="</tr>";
    }
    html = html+ "<table>";
    $("#dv_destin").html((persona_empresa.length != 0) ? html : "");
    salirDialogMin();
    guardarDialogMail();
}
function salirDialogMin(){
    $("#dlgPrueba").dialog("close");
    $("#dlgTrabajadorMail").dialog("close");
    $("#dlgEmpresa").dialog("close");
    $("#dlgDetalleArchivos").dialog("close");
    $("#txt_q").val("");
    limpiarSelector();
}
function buscarUsuario(){
    mostraDialogo_Usuario();
}
function buscarEmpresa(){
    mostraDialogo_Empresa();
}
function limpiarSelector(){
    $("#CodigosSelec").val("");
}
function llenarSelector(array){
    $("#CodigosSelec").val(array.toString());
}
function buscarTrabajadorEmail(){
    mostraDialogo_UsuarioMail();
}
function mostraDialogo_UsuarioMail(){
    $("#dlgTrabajadorMail").dialog({
        width: 710,
        high: 600,
        modal: true,
        resizable: false,
        position: 'top',
        buttons: {
            Guardar: guardarDialogMail,
            Salir: salirDialogMin
        }
    });
    llenarSelector(mail_usuario_codigo);
    cargarFlexEmail();
    $("#flexTrabajadmail").flexOptions({
        newp:1
    }).flexReload();
}
function cargarFlexEmail(){
    $("#flexTrabajadmail").flexigrid({
        url: Url_Sistema[1]+"?opt=7",
        dataType: 'json',
        colModel : [
        {
            display: '<b>Codigo Área / Dni</b>',
            name : 'codigo',
            width : 100,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Área / Nombres</b>',
            name : 'nombres',
            width : 280,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Correo Electrónico</b>',
            name : 'correo',
            width : 170,
            sortable : false,
            align: 'left'
        },

        {
            display: '<b>Seleccionar</b>',
            name : 'opciones',
            width : 70,
            sortable : false,
            align: 'center'
        }
        ],
        field_find: "ÁREA O NOMBRES: ",
        sortname: "codigo",
        sortorder: "asc",
        usepager: true,
        title: 'TRABAJADORES DE EPS GRAU S.A.',
        useRp: true,
        rp: 10,
        showTableToggleBtn: false,
        width: 670,
        height: 310
    });
}
function guardarDialogMail(){
    var html = "";
    for(var i=0; i<mail_usuario_codigo.length; i++){
        html+=mail_usuario[i]+", ";
    }
    $("#dv_mail_trabaj").html(html);
    salirDialogMin();
}
function selItem_mail(){
    var check_mail_codigo = this.getAttribute("checkcodigo");
    var check_mail = this.getAttribute("checkmail");
    if ($(this).is(':checked')){
        selItem_mailConCodigo(check_mail_codigo,check_mail,"I");
    }else{
        selItem_mailConCodigo(check_mail_codigo,check_mail,"S");
    }
}
function selItem_mailConCodigo(codigo,mail,accion){
    var check_mail_codigo = codigo;
    var check_mail = mail;
    if (accion=="I"){
        mail_usuario.push(check_mail);
        mail_usuario_codigo.push(check_mail_codigo);
    }else{
        var posi = jQuery.inArray(check_mail_codigo, mail_usuario_codigo);
        mail_usuario.splice(posi,1);
        mail_usuario_codigo.splice(posi,1);
    }
    llenarSelector(mail_usuario_codigo);
}
function getDataMil(){
    var rr = "";
    for(i=0; i<mail_usuario.length; i++){
        rr+=mail_usuario[i]+",";
    }
    return rr;
}
function prueba(){
    var data = $("#messageDiv").html();
    try{
        if(data.length!=0){
            $("#messageDiv_Principal").html(data);
            addFileChooserExterno();
        }
    }catch(e){}
    
}
function nuevo_empresa(){
    $("#txtCodigo").val("");
    $("#txtRazonSocial").val("");
    $("#txtDireccion").val("");
    $("#txtTelefono").val("");
    $("#txtFax").val("");
    $("#txtCorreo").val("");
    $("#dlgIngresoEmpresa").dialog({
        width: 800,
        high: 300,
        modal: true,
        resizable: false,
        position: 'top',
        buttons: {
            Guardar: guardarDialogEmpresa
        }
    });
}
function guardarDialogEmpresa(){
    var _opt = 9;
    //--- valores del objeto empresa
    var codigo = $("#txtCodigo").val();
    var razonsocial = $("#txtRazonSocial").val();
    var direccion = $("#txtDireccion").val();
    var telefono = $("#txtTelefono").val();
    var fax = $("#txtFax").val();
    var correo = $("#txtCorreo").val();
    var mensaje = mensajes_sistema[160];
    jConfirm(mensaje, 'Mensaje del Sistema', function(r) {
        if(r){
            $.getJSON(Url_Sistema[0], {
                opt: _opt,
                dashglkdjhdhasjjkhdsfa321: codigo,
                d321ashglkdjhdhasjjkhdsfa: razonsocial,
                dashglkdjhdhasjjkhd54sfa : direccion,
                dashglkdjhdhasjjkhd2312sfa : telefono,
                dashglkdjhdhasjjkhd52341232sfa : fax,
                gdfhfddasg5wdfsdfdf: correo
            }, function(data){
                if(data.success){
                    var msg = data.datos;
                    var msgs = msg.split("|");
                    jAlert(msgs[1]);
                    $("#dlgIngresoEmpresa").dialog("close");
                    $("#flexEmpresas").flexOptions({
                        newp:1
                    }).flexReload();
                    cargarFlexTrabaj();
                }
            });
        }
    });
}